
def inbound_mon_call1():
  """Inbound call Ext1DN1 to DN2, abnormal release Ext1DN1"""
  Ext1DN1.MakeCall(DN2)
  Ext1DN1.ReleaseCall()


def inbound_mon_call2():
  """Inbound call Ext1DN1 to DN2, release Ext1DN1"""
  Ext1DN1.MakeCall(DN2)
  DN2.AnswerCall()
  Ext1DN1.ReleaseCall()
  
def inbound_mon_call3():
  """Inbound call Ext1DN1 to DN2, release DN2"""
  Ext1DN1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.ReleaseCall()  


def inbound_mon_trans1():
  """Inbound call Ext1DN1 to  DN2, two step transfer to DN3, release DN3"""
  Ext1DN1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateTransfer(DN3)
  DN3.AnswerCall()
  DN2.CompleteTransfer()
  DN3.ReleaseCall()

def inbound_mon_trans2():
  """Inbound call Ext1DN1 to  DN2, two step transfer to DN3, abnormal release DN2"""
  Ext1DN1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateTransfer(DN3)
  DN2.ReleaseCall()
  Ext1DN1.ReleaseCall()

def inbound_mon_trans3():
  """Inbound call Ext1DN1 to DN2, two step transfer to DN3, completed before consulted party answer"""
  Ext1DN1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateTransfer(DN3)
  DN2.CompleteTransfer()
  DN3.AnswerCall()
  Ext1DN1.ReleaseCall()

def inbound_mon_trans4():
  """Inbound call, two step transfer to DN3, completed before consulted party answer, abnor"""
  Ext1DN1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateTransfer(DN3)
  DN2.CompleteTransfer()
  Ext1DN1.ReleaseCall()



def inbound_mon_conf1():
  """Inbound call Ext1DN1 to DN2, inbound conference to DN3, release Ext1DN1, DN2"""
  Ext1DN1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateConference(DN3)
  DN3.AnswerCall()
  DN2.CompleteConference()
  Ext1DN1.ReleaseCall()
  DN2.ReleaseCall()

def inbound_mon_conf2():
  """Inbound call Ext1DN1 to DN2, DN2 cinit conference to DN3, abnorl release DN2, release Ext1DN1"""
  Ext1DN1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateConference(DN3)
  DN2.ReleaseCall()
  Ext1DN1.ReleaseCall()


def inbound_mon_conf3():
  """Inbound call Ext1DN1 to DN2, DN2 cinit conference to DN3, release Ext1DN1, DN3 answe,r release DN2"""
  Ext1DN1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateConference(DN3)
  Ext1DN1.ReleaseCall()
  DN3.AnswerCall()
  DN2.ReleaseCall()